﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.Data.SqlTypes;


namespace WebApplication1
{
    public partial class Newuser : System.Web.UI.Page
    {
        private string Сon = ConfigurationManager.ConnectionStrings["TestConnectionString"].ConnectionString;
        private string role;
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void ButtonAddClick(object sender, EventArgs e)
        {  SqlConnection connection = new SqlConnection(Сon);
            try
            {
                role = "Пользователь";
              
                connection.Open();
                if (CheckBoxRights.Checked == true)
                {
                    role = "Администратор";
                }
                else
                {
                    role = "Агент";
                }
                
                    //Проверка на уникальность создания пароля
                    SqlCommand command2 = new SqlCommand("SELECT Login FROM User1 WHERE Login='" + TextBoxLogin.Text + "'", connection);
                    SqlDataReader reader = command2.ExecuteReader();

                    if (reader.HasRows == false)
                    {

                        reader.Close();
                        SqlCommand сommand1 = new SqlCommand("insert into User1 (Password,Role,Name,Surname,Phone,Email,Login)" +
                            "VALUES ('" + TextBoxPassword.Text + "','" + role + "','" + TextBoxName.Text + "','" + TextBoxSurnaeme.Text + "','" + Convert.ToString(TextBoxPhone.Text) + "','" + TextBoxEmail.Text + "','" + TextBoxLogin.Text + "')", connection);
                        сommand1.ExecuteNonQuery();

                        connection.Close();
                        Label1.Visible = true;
                        Label2.Visible = false;
                        //Если не существут такого ЛОГИНА, то USER добавится и все поля очистятся для нового ввода информации. Т.К. мы остаёмся на этой же странице
                        TextBoxName.Text = "";
                        TextBoxSurnaeme.Text = "";
                        TextBoxLogin.Text = "";
                        TextBoxPassword.Text = "";
                        CheckBoxRights.Checked = false;
                        TextBoxPhone.Text = "";
                        TextBoxEmail.Text = "";
                    }
                    else
                    {
                        connection.Close();
                       TextBoxLogin.Text = ""; //Если такой логин уже существует, то поле очистится и система попросит ввести новый логин
                        Label2.Visible = true;
                        Label2.Text = "Пользователь с таким логином уже существует, пожалуйста введите другой логин";

                    }
                }
            
            catch (Exception ex)
            {
                connection.Close();
                Server.Transfer("Error.aspx?error=" + ex.Message);
            }
        }
    }
}
